﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ComponentModel;
using System.Runtime.Serialization;

namespace elr_tracking_bal.COT
{
    public class Cotizacion : INotifyPropertyChanged
    {
        private int _UNID_COTIZACION;
        private int _ID_EMPRESA;
        private int _ID_USER;
        private COT.Status _STATUS;
        private ART.Categoria _CATEGORIA;
        private CAT.TipoCotizacion _TIPO_COTIZACION;
        private CAT.Proyecto _PROYECTO;
        private DateTime _FECHA_SOLICITUD;
        private DateTime _FECHA_REQUERIMENTO;
        private DateTime _FECHA_COTIZACION;
        private string _OBSERVACIONES_COMPRAS;
        private int _DIAS_VIGENCIA;
        private string _MOTIVO_CANCELACION;
        private APP_ROL _ROL;

        public int UNID_COTIZACION
        {
            get
            {
                return _UNID_COTIZACION;
            }
            set
            {
                if (_UNID_COTIZACION != value)
                {
                    _UNID_COTIZACION = value;
                    if (this.PropertyChanged != null)
                    {
                        this.PropertyChanged(this, new PropertyChangedEventArgs("UNID_COTIZACION"));
                    }
                }
            }
        }

        public int ID_EMPRESA
        {
            get
            {
                return _ID_EMPRESA;
            }
            set
            {
                if (_ID_EMPRESA != value)
                {
                    _ID_EMPRESA = value;
                    if (this.PropertyChanged != null)
                    {
                        this.PropertyChanged(this, new PropertyChangedEventArgs("ID_EMPRESA"));
                    }
                }
            }
        }

        public int ID_USER
        {
            get
            {
                return _ID_USER;
            }
            set
            {
                if (_ID_USER != value)
                {
                    _ID_USER = value;
                    if (this.PropertyChanged != null)
                    {
                        this.PropertyChanged(this, new PropertyChangedEventArgs("ID_USER"));
                    }
                }
            }
        }

        public DateTime FECHA_SOLICITUD
        {
            get
            {
                return _FECHA_SOLICITUD;
            }
            set
            {
                if (_FECHA_SOLICITUD != value)
                {
                    _FECHA_SOLICITUD = value;
                    if (this.PropertyChanged != null)
                    {
                        this.PropertyChanged(this, new PropertyChangedEventArgs("FECHA_SOLICITUD"));
                    }
                }
            }
        }

        public DateTime FECHA_REQUERIMENTO
        {
            get
            {
                return _FECHA_REQUERIMENTO;
            }
            set
            {
                if (_FECHA_REQUERIMENTO != value)
                {
                    _FECHA_REQUERIMENTO = value;
                    if (this.PropertyChanged != null)
                    {
                        this.PropertyChanged(this, new PropertyChangedEventArgs("FECHA_REQUERIMENTO"));
                    }
                }
            }
        }

        public DateTime FECHA_COTIZACION
        {
            get
            {
                return _FECHA_COTIZACION;
            }
            set
            {
                if (_FECHA_COTIZACION != value)
                {
                    _FECHA_COTIZACION = value;
                    if (this.PropertyChanged != null)
                    {
                        this.PropertyChanged(this, new PropertyChangedEventArgs("FECHA_COTIZACION"));
                    }
                }
            }
        }

        public string OBSERVACIONES_COMPRAS
        {
            get
            {
                return _OBSERVACIONES_COMPRAS;
            }
            set
            {
                if (_OBSERVACIONES_COMPRAS != value)
                {
                    _OBSERVACIONES_COMPRAS = value;
                    if (this.PropertyChanged != null)
                    {
                        this.PropertyChanged(this, new PropertyChangedEventArgs("OBSERVACIONES_COMPRAS"));
                    }
                }
            }
        }

        public int DIAS_VIGENCIA
        {
            get
            {
                return _DIAS_VIGENCIA;
            }
            set
            {
                if (_DIAS_VIGENCIA != value)
                {
                    _DIAS_VIGENCIA = value;
                    if (this.PropertyChanged != null)
                    {
                        this.PropertyChanged(this, new PropertyChangedEventArgs("DIAS_VIGENCIA"));
                    }
                }
            }
        }

        public string MOTIVO_CANCELACION
        {
            get
            {
                return _MOTIVO_CANCELACION;
            }
            set
            {
                if (_MOTIVO_CANCELACION != value)
                {
                    _MOTIVO_CANCELACION = value;
                    if (this.PropertyChanged != null)
                    {
                        this.PropertyChanged(this, new PropertyChangedEventArgs("MOTIVO_CANCELACION"));
                    }
                }
            }
        }

        public event PropertyChangedEventHandler PropertyChanged;
    }
}
